<?php

    require('init.php');
    require('header.php');
    $produit = Produit::rechercheProduit(Tools::getValue('id', 'GET'));
    $marques = Marque::getMarques();
    $categories = Categorie::getCategories();
    $tvas = Tva::getTvas();
    //on vérifie que le formulaire a bien été envoyé et on modifie le produit
    if(Tools::getValue('modif')){    
        $produit->setLibelle(Tools::getValue('libelle'));
        $produit->setMarque(Marque::rechercheMarque(Tools::getValue('id_marque')));
        $produit->setReference(Tools::getValue('reference'));
        $produit->setDescription(Tools::getValue('description'));
        $produit->setDescriptionLongue(Tools::getValue('description_longue'));
        $produit->setStock(Tools::getValue('stock'));
        $produit->setPrixUnit(Tools::getValue('prix_unitaire'));
        $produit->setTva(Tva::rechercheTva(Tools::getValue('id_tva')));
        $produit->setPromotion(Tools::getValue('promotion'));
        $produit->setVentePrivee(Tools::getValue('vente_privee'));
        $produit->setValide(Tools::getValue('valide'));
        $produit->update();
    }
    else if(Tools::getValue('ajout')) {
        if($_FILES['image']['error'] == 0) {
            $accept = array("jpg", 'jpeg', 'png');
            $extension = strtolower(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION));
            //On regarde que l'extension est juste
            if(!in_array($extension, $accept)) {
                echo    'L\'extension n\'est pas supportée';
            }
            //Le poids du fichier ne doit pas dépassé 5Mo
            else if($_FILES['image']['size'] > 5000000) {
                echo    'Le poids de l\'image est trop élevé';
            }
            //On regarde is l'upload réussi et dans ce cas on déplace le fichier
            else {
                $produit = new Produit(0, Marque::rechercheMarque(Tools::getValue('id_marque')), Tools::getValue('libelle'), 
                                        Tools::getValue('reference'), Tools::getValue('description'), 
                                        Tools::getValue('description_longue'), Tools::getValue('stock'), Tools::getValue('prix_unitaire'),
                                        Tva::rechercheTva(Tools::getValue('id_tva')), Tools::getValue('promotion'), 
                                        Tools::getValue('vente_privee'), new DateTime(), new DateTime(), Tools::getValue('valide'));
                $produit->add();
                $image = new ProduitImage(0, $produit, 1);
                $image->add();
                $categorie_produit = new CategorieProduit(Categorie::rechercheCategorie(Tools::getValue('id_categorie')), $produit);
                $categorie_produit->add();
                move_uploaded_file($_FILES['image']['tmp_name'], '../img/p/'.$image->getId().'_'.$image->getProduit()->getId().'.jpg');
            }
            
        }
        else {
            echo 'Une erreur est survenu durant l\'upload de l\'image';
        }
    }
    
    if($produit instanceof Produit && $produit->getId() != 0) {
        $vente_privee_checked = "";
        if($produit->getVentePrivee() == 1) {
            $vente_privee_checked = "CHECKED";
        }
        $valide_checked = "";
        if($produit->getValide() == 1) {
            $valide_checked = "CHECKED";
        }
        echo    '<form enctype="multipart/form-data" method="POST" action="details_produits.php">
                    <div class="container_12 formulaire">
                        <h2>
                            Modification du produit '.$produit.'
                        </h2>
                        <div class="grid_1">
                            &nbsp;
                        </div>
                        <div class="grid_4 label_admin">
                            ID<br>
                            Marque<br>
                            Libellé<br> 
                            Image<br>
                            Référence<br>
                            Description<br>
                            Description longue<br>
                            Stock<br>
                            Prix unitaire<br>
                            Promotion<br>
                            Tva<br>
                            Uniquement pour les ventes privées<br>
                            Valide<br>
                        </div>
                        <div class="grid_6 formulaire_admin">
                            <input type="text" name="id" value="'.$produit->getId().'" READONLY /><br>
                            <select name="id_marque">
                                <option value="'.$produit->getMarque()->getId().'">'.$produit->getMarque().'</option>';
        foreach($marques as $marque) {
            echo                '<option value="'.$marque->getId().'">'.$marque.'</option>';
        }
        echo                '</select><br>
                            <input type="text" name="libelle" value="'.$produit->getLibelle().'"/><br>
                            <input type="file" name="image" /><br>
                            <input type="text" name="reference" value"'.$produit->getReference().'"/>
                            <input type="text" name="description" value="'.$produit->getDescription().'"/><br>
                            <input type="text" name="description_longue" value="'.$produit->getDescriptionLongue().'"/><br>
                            <input type="text" name="stock" value="'.$produit->getStock().'"/><br>
                            <input type="text" name="prix_unitaire" value="'.$produit->getPrixUnit().'"/><br>
                            <input type="text" name="promotion" value="'.$produit->getPromotion().'"/><br>
                            <select name="id_tva">
                                <option value="'.$produit->getTva()->getId().'">'.$produit->getTva().'</option>';
        foreach($tvas as $tva) {
            echo            '<option value="'.$tva->getId().'">'.$tva.'</option>';
        }
        echo                '</select><br>
                            <input type="checkbox" name="vente_privee" value="1" '.$vente_privee_checked.'/><br>
                            <input type="checkbox" name="valide" value="1" '.$valide_checked.'/><br>
                            <input type="submit" name="modif" class="btn" value="Modifier"/>
                        </div>
                    </div>
                </form>';
    }
    else {        
        echo    '<form enctype="multipart/form-data" method="POST" action="details_produits.php">
                    <div class="container_12 formulaire">
                        <h2>
                            Ajout d\'un produit
                        </h2>
                        <div class="grid_1">
                            &nbsp;
                        </div>
                        <div class="grid_4 label_admin">
                            Marque<br>
                            Catégorie<br>
                            Libellé<br> 
                            Image<br>
                            Référence<br>
                            Description<br>
                            Description longue<br>
                            Stock<br>
                            Prix unitaire<br>
                            Promotion<br>
                            Tva<br>
                            Uniquement pour les ventes privées<br>
                            Valide<br>
                        </div>
                        <div class="grid_6 formulaire_admin">
                            <select name="id_marque">';
        foreach($marques as $marque) {
            echo                '<option value="'.$marque->getId().'">'.$marque.'</option>';
        }
        echo                '</select><br>
                            <select name="id_categorie">';
        foreach($categories as $categorie) {
            if($categorie->getIdParent() != 0) {
                $parent = Categorie::rechercheCategorie($categorie->getIdParent());
                echo            '<option value="'.$categorie->getId().'">'.$parent.' > '.$categorie.'</option>';
            }
        }
        echo                '</select><br>
                            <input type="text" name="libelle"/><br>
                            <input type="file" name="image" /><br>
                            <input type="text" name="reference"/><br>
                            <input type="text" name="description" /><br>
                            <input type="text" name="description_longue" /><br>
                            <input type="text" name="stock" /><br>
                            <input type="text" name="prix_unitaire" /><br>
                            <input type="text" name="promotion"/><br>
                            <select name="id_tva">';
        foreach($tvas as $tva) {
            echo            '<option value="'.$tva->getId().'">'.$tva.'</option>';
        }
        echo                '</select><br>
                            <input type="checkbox" name="vente_privee" value="1"/><br>
                            <input type="checkbox" name="valide" value="1"/><br>
                            <input type="submit" name="ajout" class="btn" value="Ajouter"/>
                        </div>
                    </div>
                </form>';
    }
    
    
?>
